home *** CD-ROM | disk | FTP | other *** search
/ Macwelt 4 / Macwelt DVD 4.cdr / Entwickler / Mac-OS / oxygen / oxygen.app / Contents / Resources / Java / oxygen.jar / builtin / XSLSchema.xsd < prev   
Encoding:
Extensible Markup Language  |  2002-09-09  |  21.3 KB  |  619 lines

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--W3C Schema generated by XML Spy v4.3 U (http://www.xmlspy.com)-->
  3. <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
  4. xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/XSL/Transform"
  5. targetNamespace="http://www.w3.org/1999/XSL/Transform"
  6. >
  7.     <xs:element name="apply-imports">
  8.         <xs:complexType/>
  9.     </xs:element>
  10.     <xs:element name="apply-templates">
  11.         <xs:complexType>
  12.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  13.                 <xs:element ref="sort"/>
  14.                 <xs:element ref="with-param"/>
  15.             </xs:choice>
  16.             <xs:attribute name="select" type="xs:string" default="node()"/>
  17.             <xs:attribute name="mode" type="xs:NMTOKEN"/>
  18.         </xs:complexType>
  19.     </xs:element>
  20.     <xs:element name="attribute">
  21.         <xs:complexType mixed="true">
  22.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  23.                 <xs:element ref="apply-templates"/>
  24.                 <xs:element ref="call-template"/>
  25.                 <xs:element ref="apply-imports"/>
  26.                 <xs:element ref="for-each"/>
  27.                 <xs:element ref="value-of"/>
  28.                 <xs:element ref="copy-of"/>
  29.                 <xs:element ref="number"/>
  30.                 <xs:element ref="choose"/>
  31.                 <xs:element ref="if"/>
  32.                 <xs:element ref="text"/>
  33.                 <xs:element ref="copy"/>
  34.                 <xs:element ref="variable"/>
  35.                 <xs:element ref="message"/>
  36.                 <xs:element ref="fallback"/>
  37.             </xs:choice>
  38.             <xs:attribute name="name" type="xs:string" use="required"/>
  39.             <xs:attribute name="namespace" type="xs:string"/>
  40.         </xs:complexType>
  41.     </xs:element>
  42.     <xs:element name="attribute-set">
  43.         <xs:complexType>
  44.             <xs:sequence minOccurs="0" maxOccurs="unbounded">
  45.                 <xs:element ref="attribute"/>
  46.             </xs:sequence>
  47.             <xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
  48.             <xs:attribute name="use-attribute-sets" type="xs:NMTOKENS"/>
  49.         </xs:complexType>
  50.     </xs:element>
  51.     <xs:element name="call-template">
  52.         <xs:complexType>
  53.             <xs:sequence minOccurs="0" maxOccurs="unbounded">
  54.                 <xs:element ref="with-param"/>
  55.             </xs:sequence>
  56.             <xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
  57.         </xs:complexType>
  58.     </xs:element>
  59.     <xs:element name="choose">
  60.         <xs:complexType>
  61.             <xs:sequence>
  62.                 <xs:element ref="when" minOccurs="1" maxOccurs="unbounded"/>
  63.                 <xs:element ref="otherwise" minOccurs="0" maxOccurs="1"/>
  64.             </xs:sequence>
  65.         </xs:complexType>
  66.     </xs:element>
  67.     <xs:element name="comment">
  68.         <xs:complexType mixed="true">
  69.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  70.                 <xs:element ref="apply-templates"/>
  71.                 <xs:element ref="call-template"/>
  72.                 <xs:element ref="apply-imports"/>
  73.                 <xs:element ref="for-each"/>
  74.                 <xs:element ref="value-of"/>
  75.                 <xs:element ref="copy-of"/>
  76.                 <xs:element ref="number"/>
  77.                 <xs:element ref="choose"/>
  78.                 <xs:element ref="if"/>
  79.                 <xs:element ref="text"/>
  80.                 <xs:element ref="copy"/>
  81.                 <xs:element ref="variable"/>
  82.                 <xs:element ref="message"/>
  83.                 <xs:element ref="fallback"/>
  84.             </xs:choice>
  85.         </xs:complexType>
  86.     </xs:element>
  87.     <xs:element name="copy">
  88.         <xs:complexType mixed="true">
  89.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  90.                 <xs:element ref="apply-templates"/>
  91.                 <xs:element ref="call-template"/>
  92.                 <xs:element ref="apply-imports"/>
  93.                 <xs:element ref="for-each"/>
  94.                 <xs:element ref="value-of"/>
  95.                 <xs:element ref="copy-of"/>
  96.                 <xs:element ref="number"/>
  97.                 <xs:element ref="choose"/>
  98.                 <xs:element ref="if"/>
  99.                 <xs:element ref="text"/>
  100.                 <xs:element ref="copy"/>
  101.                 <xs:element ref="variable"/>
  102.                 <xs:element ref="message"/>
  103.                 <xs:element ref="fallback"/>
  104.                 <xs:element ref="processing-instruction"/>
  105.                 <xs:element ref="comment"/>
  106.                 <xs:element ref="element"/>
  107.                 <xs:element ref="attribute"/>
  108.             </xs:choice>
  109.             <xs:attribute name="use-attribute-sets" type="xs:NMTOKENS"/>
  110.         </xs:complexType>
  111.     </xs:element>
  112.     <xs:element name="copy-of">
  113.         <xs:complexType>
  114.             <xs:attribute name="select" type="xs:string" use="required"/>
  115.         </xs:complexType>
  116.     </xs:element>
  117.     <xs:element name="decimal-format">
  118.         <xs:complexType>
  119.             <xs:attribute name="name" type="xs:NMTOKEN"/>
  120.             <xs:attribute name="decimal-separator" type="xs:string" default="."/>
  121.             <xs:attribute name="grouping-separator" type="xs:string" default=","/>
  122.             <xs:attribute name="infinity" type="xs:string" default="Infinity"/>
  123.             <xs:attribute name="minus-sign" type="xs:string" default="-"/>
  124.             <xs:attribute name="NaN" type="xs:string" default="NaN"/>
  125.             <xs:attribute name="percent" type="xs:string" default="%"/>
  126.             <xs:attribute name="per-mille" type="xs:string" default="‰"/>
  127.             <xs:attribute name="zero-digit" type="xs:string" default="0"/>
  128.             <xs:attribute name="digit" type="xs:string" default="#"/>
  129.             <xs:attribute name="pattern-separator" type="xs:string" default=";"/>
  130.         </xs:complexType>
  131.     </xs:element>
  132.     <xs:element name="element">
  133.         <xs:complexType mixed="true">
  134.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  135.                 <xs:element ref="apply-templates"/>
  136.                 <xs:element ref="call-template"/>
  137.                 <xs:element ref="apply-imports"/>
  138.                 <xs:element ref="for-each"/>
  139.                 <xs:element ref="value-of"/>
  140.                 <xs:element ref="copy-of"/>
  141.                 <xs:element ref="number"/>
  142.                 <xs:element ref="choose"/>
  143.                 <xs:element ref="if"/>
  144.                 <xs:element ref="text"/>
  145.                 <xs:element ref="copy"/>
  146.                 <xs:element ref="variable"/>
  147.                 <xs:element ref="message"/>
  148.                 <xs:element ref="fallback"/>
  149.                 <xs:element ref="processing-instruction"/>
  150.                 <xs:element ref="comment"/>
  151.                 <xs:element ref="element"/>
  152.                 <xs:element ref="attribute"/>
  153.             </xs:choice>
  154.             <xs:attribute name="name" type="xs:string" use="required"/>
  155.             <xs:attribute name="namespace" type="xs:string"/>
  156.             <xs:attribute name="use-attribute-sets" type="xs:NMTOKENS"/>
  157.         </xs:complexType>
  158.     </xs:element>
  159.     <xs:element name="fallback">
  160.         <xs:complexType mixed="true">
  161.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  162.                 <xs:element ref="apply-templates"/>
  163.                 <xs:element ref="call-template"/>
  164.                 <xs:element ref="apply-imports"/>
  165.                 <xs:element ref="for-each"/>
  166.                 <xs:element ref="value-of"/>
  167.                 <xs:element ref="copy-of"/>
  168.                 <xs:element ref="number"/>
  169.                 <xs:element ref="choose"/>
  170.                 <xs:element ref="if"/>
  171.                 <xs:element ref="text"/>
  172.                 <xs:element ref="copy"/>
  173.                 <xs:element ref="variable"/>
  174.                 <xs:element ref="message"/>
  175.                 <xs:element ref="fallback"/>
  176.                 <xs:element ref="processing-instruction"/>
  177.                 <xs:element ref="comment"/>
  178.                 <xs:element ref="element"/>
  179.                 <xs:element ref="attribute"/>
  180.             </xs:choice>
  181.         </xs:complexType>
  182.     </xs:element>
  183.     <xs:element name="for-each">
  184.         <xs:complexType mixed="true">
  185.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  186.                 <xs:element ref="apply-templates"/>
  187.                 <xs:element ref="call-template"/>
  188.                 <xs:element ref="apply-imports"/>
  189.                 <xs:element ref="for-each"/>
  190.                 <xs:element ref="value-of"/>
  191.                 <xs:element ref="copy-of"/>
  192.                 <xs:element ref="number"/>
  193.                 <xs:element ref="choose"/>
  194.                 <xs:element ref="if"/>
  195.                 <xs:element ref="text"/>
  196.                 <xs:element ref="copy"/>
  197.                 <xs:element ref="variable"/>
  198.                 <xs:element ref="message"/>
  199.                 <xs:element ref="fallback"/>
  200.                 <xs:element ref="processing-instruction"/>
  201.                 <xs:element ref="comment"/>
  202.                 <xs:element ref="element"/>
  203.                 <xs:element ref="attribute"/>
  204.                 <xs:element ref="sort"/>
  205.             </xs:choice>
  206.             <xs:attribute name="select" type="xs:string" use="required"/>
  207.         </xs:complexType>
  208.     </xs:element>
  209.     <xs:element name="if">
  210.         <xs:complexType mixed="true">
  211.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  212.                 <xs:element ref="apply-templates"/>
  213.                 <xs:element ref="call-template"/>
  214.                 <xs:element ref="apply-imports"/>
  215.                 <xs:element ref="for-each"/>
  216.                 <xs:element ref="value-of"/>
  217.                 <xs:element ref="copy-of"/>
  218.                 <xs:element ref="number"/>
  219.                 <xs:element ref="choose"/>
  220.                 <xs:element ref="if"/>
  221.                 <xs:element ref="text"/>
  222.                 <xs:element ref="copy"/>
  223.                 <xs:element ref="variable"/>
  224.                 <xs:element ref="message"/>
  225.                 <xs:element ref="fallback"/>
  226.                 <xs:element ref="processing-instruction"/>
  227.                 <xs:element ref="comment"/>
  228.                 <xs:element ref="element"/>
  229.                 <xs:element ref="attribute"/>
  230.             </xs:choice>
  231.             <xs:attribute name="test" type="xs:string" use="required"/>
  232.         </xs:complexType>
  233.     </xs:element>
  234.     <xs:element name="import">
  235.         <xs:complexType>
  236.             <xs:attribute name="href" type="xs:string" use="required"/>
  237.         </xs:complexType>
  238.     </xs:element>
  239.     <xs:element name="include">
  240.         <xs:complexType>
  241.             <xs:attribute name="href" type="xs:string" use="required"/>
  242.         </xs:complexType>
  243.     </xs:element>
  244.     <xs:element name="key">
  245.         <xs:complexType>
  246.             <xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
  247.             <xs:attribute name="match" type="xs:string" use="required"/>
  248.             <xs:attribute name="use" type="xs:string" use="required"/>
  249.         </xs:complexType>
  250.     </xs:element>
  251.     <xs:element name="message">
  252.         <xs:complexType mixed="true">
  253.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  254.                 <xs:element ref="apply-templates"/>
  255.                 <xs:element ref="call-template"/>
  256.                 <xs:element ref="apply-imports"/>
  257.                 <xs:element ref="for-each"/>
  258.                 <xs:element ref="value-of"/>
  259.                 <xs:element ref="copy-of"/>
  260.                 <xs:element ref="number"/>
  261.                 <xs:element ref="choose"/>
  262.                 <xs:element ref="if"/>
  263.                 <xs:element ref="text"/>
  264.                 <xs:element ref="copy"/>
  265.                 <xs:element ref="variable"/>
  266.                 <xs:element ref="message"/>
  267.                 <xs:element ref="fallback"/>
  268.                 <xs:element ref="processing-instruction"/>
  269.                 <xs:element ref="comment"/>
  270.                 <xs:element ref="element"/>
  271.                 <xs:element ref="attribute"/>
  272.             </xs:choice>
  273.             <xs:attribute name="terminate" default="no">
  274.                 <xs:simpleType>
  275.                     <xs:restriction base="xs:NMTOKEN">
  276.                         <xs:enumeration value="yes"/>
  277.                         <xs:enumeration value="no"/>
  278.                     </xs:restriction>
  279.                 </xs:simpleType>
  280.             </xs:attribute>
  281.         </xs:complexType>
  282.     </xs:element>
  283.     <xs:element name="namespace-alias">
  284.         <xs:complexType>
  285.             <xs:attribute name="stylesheet-prefix" type="xs:string" use="required"/>
  286.             <xs:attribute name="result-prefix" type="xs:string" use="required"/>
  287.         </xs:complexType>
  288.     </xs:element>
  289.     <xs:element name="number">
  290.         <xs:complexType>
  291.             <xs:attribute name="level" default="single">
  292.                 <xs:simpleType>
  293.                     <xs:restriction base="xs:NMTOKEN">
  294.                         <xs:enumeration value="single"/>
  295.                         <xs:enumeration value="multiple"/>
  296.                         <xs:enumeration value="any"/>
  297.                     </xs:restriction>
  298.                 </xs:simpleType>
  299.             </xs:attribute>
  300.             <xs:attribute name="count" type="xs:string"/>
  301.             <xs:attribute name="from" type="xs:string"/>
  302.             <xs:attribute name="value" type="xs:string"/>
  303.             <xs:attribute name="format" type="xs:string" default="1"/>
  304.             <xs:attribute name="lang" type="xs:string"/>
  305.             <xs:attribute name="letter-value" type="xs:string"/>
  306.             <xs:attribute name="grouping-separator" type="xs:string"/>
  307.             <xs:attribute name="grouping-size" type="xs:string"/>
  308.         </xs:complexType>
  309.     </xs:element>
  310.     <xs:element name="otherwise">
  311.         <xs:complexType mixed="true">
  312.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  313.                 <xs:element ref="apply-templates"/>
  314.                 <xs:element ref="call-template"/>
  315.                 <xs:element ref="apply-imports"/>
  316.                 <xs:element ref="for-each"/>
  317.                 <xs:element ref="value-of"/>
  318.                 <xs:element ref="copy-of"/>
  319.                 <xs:element ref="number"/>
  320.                 <xs:element ref="choose"/>
  321.                 <xs:element ref="if"/>
  322.                 <xs:element ref="text"/>
  323.                 <xs:element ref="copy"/>
  324.                 <xs:element ref="variable"/>
  325.                 <xs:element ref="message"/>
  326.                 <xs:element ref="fallback"/>
  327.                 <xs:element ref="processing-instruction"/>
  328.                 <xs:element ref="comment"/>
  329.                 <xs:element ref="element"/>
  330.                 <xs:element ref="attribute"/>
  331.             </xs:choice>
  332.         </xs:complexType>
  333.     </xs:element>
  334.     <xs:element name="output">
  335.         <xs:complexType>
  336.             <xs:attribute name="method" type="xs:NMTOKEN"/>
  337.             <xs:attribute name="version" type="xs:NMTOKEN"/>
  338.             <xs:attribute name="encoding" type="xs:string"/>
  339.             <xs:attribute name="omit-xml-declaration">
  340.                 <xs:simpleType>
  341.                     <xs:restriction base="xs:NMTOKEN">
  342.                         <xs:enumeration value="yes"/>
  343.                         <xs:enumeration value="no"/>
  344.                     </xs:restriction>
  345.                 </xs:simpleType>
  346.             </xs:attribute>
  347.             <xs:attribute name="standalone">
  348.                 <xs:simpleType>
  349.                     <xs:restriction base="xs:NMTOKEN">
  350.                         <xs:enumeration value="yes"/>
  351.                         <xs:enumeration value="no"/>
  352.                     </xs:restriction>
  353.                 </xs:simpleType>
  354.             </xs:attribute>
  355.             <xs:attribute name="doctype-public" type="xs:string"/>
  356.             <xs:attribute name="doctype-system" type="xs:string"/>
  357.             <xs:attribute name="cdata-section-elements" type="xs:NMTOKENS"/>
  358.             <xs:attribute name="indent">
  359.                 <xs:simpleType>
  360.                     <xs:restriction base="xs:NMTOKEN">
  361.                         <xs:enumeration value="yes"/>
  362.                         <xs:enumeration value="no"/>
  363.                     </xs:restriction>
  364.                 </xs:simpleType>
  365.             </xs:attribute>
  366.             <xs:attribute name="media-type" type="xs:string"/>
  367.         </xs:complexType>
  368.     </xs:element>
  369.     <xs:element name="param">
  370.         <xs:complexType mixed="true">
  371.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  372.                 <xs:element ref="apply-templates"/>
  373.                 <xs:element ref="call-template"/>
  374.                 <xs:element ref="apply-imports"/>
  375.                 <xs:element ref="for-each"/>
  376.                 <xs:element ref="value-of"/>
  377.                 <xs:element ref="copy-of"/>
  378.                 <xs:element ref="number"/>
  379.                 <xs:element ref="choose"/>
  380.                 <xs:element ref="if"/>
  381.                 <xs:element ref="text"/>
  382.                 <xs:element ref="copy"/>
  383.                 <xs:element ref="variable"/>
  384.                 <xs:element ref="message"/>
  385.                 <xs:element ref="fallback"/>
  386.                 <xs:element ref="processing-instruction"/>
  387.                 <xs:element ref="comment"/>
  388.                 <xs:element ref="element"/>
  389.                 <xs:element ref="attribute"/>
  390.             </xs:choice>
  391.             <xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
  392.             <xs:attribute name="select" type="xs:string"/>
  393.         </xs:complexType>
  394.     </xs:element>
  395.     <xs:element name="preserve-space">
  396.         <xs:complexType>
  397.             <xs:attribute name="elements" type="xs:string" use="required"/>
  398.         </xs:complexType>
  399.     </xs:element>
  400.     <xs:element name="processing-instruction">
  401.         <xs:complexType mixed="true">
  402.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  403.                 <xs:element ref="apply-templates"/>
  404.                 <xs:element ref="call-template"/>
  405.                 <xs:element ref="apply-imports"/>
  406.                 <xs:element ref="for-each"/>
  407.                 <xs:element ref="value-of"/>
  408.                 <xs:element ref="copy-of"/>
  409.                 <xs:element ref="number"/>
  410.                 <xs:element ref="choose"/>
  411.                 <xs:element ref="if"/>
  412.                 <xs:element ref="text"/>
  413.                 <xs:element ref="copy"/>
  414.                 <xs:element ref="variable"/>
  415.                 <xs:element ref="message"/>
  416.                 <xs:element ref="fallback"/>
  417.             </xs:choice>
  418.             <xs:attribute name="name" type="xs:string" use="required"/>
  419.         </xs:complexType>
  420.     </xs:element>
  421.     <xs:element name="sort">
  422.         <xs:complexType>
  423.             <xs:attribute name="select" type="xs:string" default="."/>
  424.             <xs:attribute name="lang" type="xs:string"/>
  425.             <xs:attribute name="data-type" type="xs:string" default="text"/>
  426.             <xs:attribute name="order" type="xs:string" default="ascending"/>
  427.             <xs:attribute name="case-order" type="xs:string"/>
  428.         </xs:complexType>
  429.     </xs:element>
  430.     <xs:element name="strip-space">
  431.         <xs:complexType>
  432.             <xs:attribute name="elements" type="xs:string" use="required"/>
  433.         </xs:complexType>
  434.     </xs:element>
  435.     <xs:element name="stylesheet">
  436.         <xs:complexType>
  437.             <xs:sequence>
  438.                 <xs:element ref="import" minOccurs="0" maxOccurs="unbounded"/>
  439.                 <xs:choice minOccurs="0" maxOccurs="unbounded">
  440.                     <xs:element ref="include"/>
  441.                     <xs:element ref="strip-space"/>
  442.                     <xs:element ref="preserve-space"/>
  443.                     <xs:element ref="output"/>
  444.                     <xs:element ref="key"/>
  445.                     <xs:element ref="decimal-format"/>
  446.                     <xs:element ref="attribute-set"/>
  447.                     <xs:element ref="variable"/>
  448.                     <xs:element ref="param"/>
  449.                     <xs:element ref="template"/>
  450.                     <xs:element ref="namespace-alias"/>
  451.                 </xs:choice>
  452.             </xs:sequence>
  453.             <xs:attribute name="extension-element-prefixes" type="xs:string"/>
  454.             <xs:attribute name="exclude-result-prefixes" type="xs:string"/>
  455.             <xs:attribute name="id" type="xs:ID"/>
  456.             <xs:attribute name="version" type="xs:NMTOKEN" use="required"/>
  457.         </xs:complexType>
  458.     </xs:element>
  459.     <xs:element name="template">
  460.         <xs:complexType mixed="true">
  461.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  462.                 <xs:element ref="apply-templates"/>
  463.                 <xs:element ref="call-template"/>
  464.                 <xs:element ref="apply-imports"/>
  465.                 <xs:element ref="for-each"/>
  466.                 <xs:element ref="value-of"/>
  467.                 <xs:element ref="copy-of"/>
  468.                 <xs:element ref="number"/>
  469.                 <xs:element ref="choose"/>
  470.                 <xs:element ref="if"/>
  471.                 <xs:element ref="text"/>
  472.                 <xs:element ref="copy"/>
  473.                 <xs:element ref="variable"/>
  474.                 <xs:element ref="message"/>
  475.                 <xs:element ref="fallback"/>
  476.                 <xs:element ref="processing-instruction"/>
  477.                 <xs:element ref="comment"/>
  478.                 <xs:element ref="element"/>
  479.                 <xs:element ref="attribute"/>
  480.                 <xs:element ref="param"/>
  481.             </xs:choice>
  482.             <xs:attribute name="match" type="xs:string"/>
  483.             <xs:attribute name="name" type="xs:NMTOKEN"/>
  484.             <xs:attribute name="priority" type="xs:NMTOKEN"/>
  485.             <xs:attribute name="mode" type="xs:NMTOKEN"/>
  486.         </xs:complexType>
  487.     </xs:element>
  488.     <xs:element name="text">
  489.         <xs:complexType>
  490.             <xs:simpleContent>
  491.                 <xs:extension base="xs:string">
  492.                     <xs:attribute name="disable-output-escaping" default="no">
  493.                         <xs:simpleType>
  494.                             <xs:restriction base="xs:NMTOKEN">
  495.                                 <xs:enumeration value="yes"/>
  496.                                 <xs:enumeration value="no"/>
  497.                             </xs:restriction>
  498.                         </xs:simpleType>
  499.                     </xs:attribute>
  500.                 </xs:extension>
  501.             </xs:simpleContent>
  502.         </xs:complexType>
  503.     </xs:element>
  504.     <xs:element name="transform">
  505.         <xs:complexType>
  506.             <xs:sequence>
  507.                 <xs:element ref="import" minOccurs="0" maxOccurs="unbounded"/>
  508.                 <xs:choice minOccurs="0" maxOccurs="unbounded">
  509.                     <xs:element ref="include"/>
  510.                     <xs:element ref="strip-space"/>
  511.                     <xs:element ref="preserve-space"/>
  512.                     <xs:element ref="output"/>
  513.                     <xs:element ref="key"/>
  514.                     <xs:element ref="decimal-format"/>
  515.                     <xs:element ref="attribute-set"/>
  516.                     <xs:element ref="variable"/>
  517.                     <xs:element ref="param"/>
  518.                     <xs:element ref="template"/>
  519.                     <xs:element ref="namespace-alias"/>
  520.                 </xs:choice>
  521.             </xs:sequence>
  522.             <xs:attribute name="extension-element-prefixes" type="xs:string"/>
  523.             <xs:attribute name="exclude-result-prefixes" type="xs:string"/>
  524.             <xs:attribute name="id" type="xs:ID"/>
  525.             <xs:attribute name="version" type="xs:NMTOKEN" use="required"/>
  526.         </xs:complexType>
  527.     </xs:element>
  528.     <xs:element name="value-of">
  529.         <xs:complexType>
  530.             <xs:attribute name="select" type="xs:string" use="required"/>
  531.             <xs:attribute name="disable-output-escaping" default="no">
  532.                 <xs:simpleType>
  533.                     <xs:restriction base="xs:NMTOKEN">
  534.                         <xs:enumeration value="yes"/>
  535.                         <xs:enumeration value="no"/>
  536.                     </xs:restriction>
  537.                 </xs:simpleType>
  538.             </xs:attribute>
  539.         </xs:complexType>
  540.     </xs:element>
  541.     <xs:element name="variable">
  542.         <xs:complexType mixed="true">
  543.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  544.                 <xs:element ref="apply-templates"/>
  545.                 <xs:element ref="call-template"/>
  546.                 <xs:element ref="apply-imports"/>
  547.                 <xs:element ref="for-each"/>
  548.                 <xs:element ref="value-of"/>
  549.                 <xs:element ref="copy-of"/>
  550.                 <xs:element ref="number"/>
  551.                 <xs:element ref="choose"/>
  552.                 <xs:element ref="if"/>
  553.                 <xs:element ref="text"/>
  554.                 <xs:element ref="copy"/>
  555.                 <xs:element ref="variable"/>
  556.                 <xs:element ref="message"/>
  557.                 <xs:element ref="fallback"/>
  558.                 <xs:element ref="processing-instruction"/>
  559.                 <xs:element ref="comment"/>
  560.                 <xs:element ref="element"/>
  561.                 <xs:element ref="attribute"/>
  562.             </xs:choice>
  563.             <xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
  564.             <xs:attribute name="select" type="xs:string"/>
  565.         </xs:complexType>
  566.     </xs:element>
  567.     <xs:element name="when">
  568.         <xs:complexType mixed="true">
  569.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  570.                 <xs:element ref="apply-templates"/>
  571.                 <xs:element ref="call-template"/>
  572.                 <xs:element ref="apply-imports"/>
  573.                 <xs:element ref="for-each"/>
  574.                 <xs:element ref="value-of"/>
  575.                 <xs:element ref="copy-of"/>
  576.                 <xs:element ref="number"/>
  577.                 <xs:element ref="choose"/>
  578.                 <xs:element ref="if"/>
  579.                 <xs:element ref="text"/>
  580.                 <xs:element ref="copy"/>
  581.                 <xs:element ref="variable"/>
  582.                 <xs:element ref="message"/>
  583.                 <xs:element ref="fallback"/>
  584.                 <xs:element ref="processing-instruction"/>
  585.                 <xs:element ref="comment"/>
  586.                 <xs:element ref="element"/>
  587.                 <xs:element ref="attribute"/>
  588.             </xs:choice>
  589.             <xs:attribute name="test" type="xs:string" use="required"/>
  590.         </xs:complexType>
  591.     </xs:element>
  592.     <xs:element name="with-param">
  593.         <xs:complexType mixed="true">
  594.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  595.                 <xs:element ref="apply-templates"/>
  596.                 <xs:element ref="call-template"/>
  597.                 <xs:element ref="apply-imports"/>
  598.                 <xs:element ref="for-each"/>
  599.                 <xs:element ref="value-of"/>
  600.                 <xs:element ref="copy-of"/>
  601.                 <xs:element ref="number"/>
  602.                 <xs:element ref="choose"/>
  603.                 <xs:element ref="if"/>
  604.                 <xs:element ref="text"/>
  605.                 <xs:element ref="copy"/>
  606.                 <xs:element ref="variable"/>
  607.                 <xs:element ref="message"/>
  608.                 <xs:element ref="fallback"/>
  609.                 <xs:element ref="processing-instruction"/>
  610.                 <xs:element ref="comment"/>
  611.                 <xs:element ref="element"/>
  612.                 <xs:element ref="attribute"/>
  613.             </xs:choice>
  614.             <xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
  615.             <xs:attribute name="select" type="xs:string"/>
  616.         </xs:complexType>
  617.     </xs:element>
  618. </xs:schema>
  619.